package string;

public class stringDemo2 {
    public static void main(String[] args) {
//  目标： 快速熟悉String提供的字符串的常用方法
        String s = "黑马Java";

//  1.获取字符串的长度
        System.out.println(s.length());

//  2.提取字符串中某个索引位置处的字符
        char c = s.charAt(1);
        System.out.println(c);

        //  字符串的遍历
        for (int i = 0; i < s.length(); i++) {
            //  i = 0 1 2 3 4 5
            char ch = s.charAt(i);
            System.out.println(ch);
        }

        System.out.println("--------------------------------");

//  3.把字符串转换成字符数组，再进行遍历
        char[] chars = s.toCharArray();
        System.out.println(chars);

        //  字符数组的遍历
        for (int i = 0; i < chars.length; i++) {
            // i = 0 1 2 3 4 5
            System.out.println(chars[i]);
        }

//  4.判断字符串内容，内容一样就返回true
        String s1 = new String("郑州");
        String s2 = new String("郑州");

        //  双等号比较的是字符串变量的地址，而s1和s2的地址是不同的
        System.out.println(s1 == s2); // false

        //  比较字符串内容(equals 不会忽略大小写)
        System.out.println(s1.equals(s2)); //true

//  5.忽略大小写与字符串比较(equalsIgnoreCase) 可用于比较 验证码
        String a1 = new String("abc3W");
        String a2 = new String("ABC3w");

        System.out.println(a1.equalsIgnoreCase(a2)); //true

//  6.截取字符串内容(包前不包后,索引从0开始)
        String s3 = "哈Java是最好的编程语言之一";
        String rs = s3.substring(1, 8);
        System.out.println(rs);

//  7.截取字符串内容(从当前索引位置一直截取到字符串的末尾)
        String rs2 = s3.substring(6);
        System.out.println(rs2);

//  8.把字符串中的某个内容替换成新内容，并返回新的字符串对象给我们
        String info = "这个电影简直是个垃圾，垃圾电影";
        String rs3 = info.replace("垃圾", "**");
        System.out.println(rs3);

//  9.判断字符串中是否包含某个关键字(精准匹配，不会忽略大小写)
        String info2 = "哈Java是最好的编程语言之一,Java123,哈哈哈Java";
        System.out.println(info2.contains("Java"));
        System.out.println(info2.contains("java"));

//  10.判断字符串是否以某个字符串开头
        String rs4 = "张三丰";
        System.out.println(rs4.startsWith("张"));
        System.out.println(rs4.startsWith("张三"));
        System.out.println(rs4.startsWith("李"));

//  11.把字符串按照某个指定的内容分割成多个字符串内容，放到一个字符串数组中返回给我们
        String rs5 = "张无忌,周芷若,殷素素,赵敏";

        // 定义一个字符串数组变量
        String[] names = rs5.split(",");

        for (int i = 0; i < names.length; i++) {
            System.out.println(names[i]);
        }

    }
}
